merge sort algorithm explanation with example